package com.dg.river.storage;

import android.content.Context;

import com.dg.river.contant.Constant;
import com.dg.river.core.util.SPUtils;

/**
 * @author jrj
 * @description 全局通用的设置
 * @date 2023/2/14
 */
public class AppSettingManager {
    /**
     * 获取个推cid
     */
    public static String getPushGtClientId(Context context) {
        return String.valueOf(SPUtils.get(context, Constant.SP_USER_INFO_GT_CLIENT_ID, ""));
    }

    /**
     * 存储个推cid
     */
    public static void setPushGtClientId(Context context, String cid) {
        SPUtils.put(context, Constant.SP_USER_INFO_GT_CLIENT_ID, cid);
    }

    /**
     * 获取用户经度
     */
    public static String getParentLon(Context context) {
        return String.valueOf(SPUtils.get(context, Constant.SP_LOGIN_PARENT_LON, ""));
    }

    /**
     * 存储用户经度
     */
    public static void setParentLon(Context context, String lon) {
        SPUtils.put(context, Constant.SP_LOGIN_PARENT_LON, lon);
    }

    /**
     * 获取用户纬度
     */
    public static String getParentLat(Context context) {
        return String.valueOf(SPUtils.get(context, Constant.SP_LOGIN_PARENT_LAT, ""));
    }

    /**
     * 存储用户纬度
     */
    public static void setParentLat(Context context, String lat) {
        SPUtils.put(context, Constant.SP_LOGIN_PARENT_LAT, lat);
    }

    /**
     * 是否拒绝定位权限，即弹框提示时点击取消按钮
     */
    public static boolean isRefuseLocation(Context context) {
        return (boolean) SPUtils.get(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_LOCATION, false);
    }

    /**
     * 设置是否拒绝定位权限
     */
    public static void setRefuseLocation(Context context, boolean refuse) {
        SPUtils.put(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_LOCATION, refuse);
    }

    /**
     * 是否拒绝相机权限，即弹框提示时点击取消按钮
     */
    public static boolean isRefuseCamera(Context context) {
        return (boolean) SPUtils.get(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_CAMERA, false);
    }

    /**
     * 设置是否拒绝相机权限
     */
    public static void setRefuseCamera(Context context, boolean refuse) {
        SPUtils.put(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_CAMERA, refuse);
    }

    /**
     * 是否拒绝相机 文件权限，即弹框提示时点击取消按钮
     */
    public static boolean isRefuseCameraDocument(Context context) {
        return (boolean) SPUtils.get(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_CAMERA_DOCUMENT, false);
    }

    /**
     * 设置是否拒绝相机 文件权限
     */
    public static void setRefuseCameraDocument(Context context, boolean refuse) {
        SPUtils.put(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_CAMERA_DOCUMENT, refuse);
    }

    /**
     * 是否拒绝本地文档权限，即弹框提示时点击取消按钮
     */
    public static boolean isRefuseDocument(Context context) {
        return (boolean) SPUtils.get(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_DOCUMENT, false);
    }

    /**
     * 设置是否拒绝本地文档权限
     */
    public static void setRefuseDocument(Context context, boolean refuse) {
        SPUtils.put(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_DOCUMENT, refuse);
    }

    /**
     * 定位权限是否请求过
     */
    public static boolean isLocationPermissionHasRequest(Context context) {
        return (boolean) SPUtils.get(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_LOCATION_HAS_REQUEST, false);
    }

    /**
     * 设置定位权限是否请求过
     */
    public static void setLocationPermissionHasRequest(Context context, boolean request) {
        SPUtils.put(context, Constant.SP_PERMISSION_INFO, Constant.SP_PERMISSION_LOCATION_HAS_REQUEST, request);
    }
}
